home *** CD-ROM | disk | FTP | other *** search
/ Amiga Collections: Amiga Club Hoorn / ACH ClubDiskette No.03 (1991)(Amiga Club Hoorn)(NL).zip / ACH ClubDiskette No.03 (1991)(Amiga Club Hoorn)(NL).adf / jr-comm.doc < prev    next >
Text File  |  1988-10-18  |  43KB  |  1,196 lines

  1. Preliminary documentation for JR-Comm 0.94
  2. ------------------------------------------
  3.  
  4.  
  5.  
  6.                             COPYRIGHT NOTICE
  7.  
  8. JR-Comm is Copyright (C) 1988, 1989 by John P. Radigan
  9. All Rights Reserved.
  10.  
  11. This document is Copyright (C) 1989 by John P. Radigan
  12. All Rights Reserved.
  13.  
  14.  
  15.  
  16.                                DISCLAIMER
  17.  
  18. No warranty, either express or implied, is made with respect to the
  19. fitness or merchantability of JR-Comm.
  20.  
  21.  
  22.  
  23.                             ACKNOWLEDGEMENTS
  24.  
  25. Peter Boswell for his WXMODEM protocol document.
  26.  
  27. Gary S. Brown for his CRC-32 data table.
  28.  
  29. Chuck Forsberg for his X/YMODEM and ZMODEM protocol specifications and
  30. for his public domain rz.c, sz.c & zm.c source files, it took a bit of
  31. work figuring out what he did, but it was well worth it!
  32.  
  33. Charlie Heath for getfile.c, didn't use it, but it did show me the
  34. anatomy of how a file requester works.
  35.  
  36. Mark G. Mendel for his CRC-16 data table.
  37.  
  38. Russ Ranshaw for his CompuServe B Plus protocol document.
  39.  
  40. Paul Resch for his BPLUS.C source file, converted from the Pascal source
  41. BPLUS.PAS by Russ Ranshaw.
  42.  
  43. Tony Sumrall & Dave Wecker for the VT100 sources, my basis for learning
  44. how a comm program functions.
  45.  
  46. Steve Winokur for the internal IBM graphics/Topaz alphas fonts.
  47.  
  48.    And special thanks to the following beta testers.  Jon Boulle, Jim
  49. Burwell, Henry Colonna, Wayne Hackney, Bruce Schoenberger, Greg Smith and
  50. Steve Winokur.
  51.  
  52.  
  53.  
  54.                               INTRODUCTION
  55.  
  56.  
  57.  
  58. 1.1  Overview.
  59.  
  60. Welcome to the preliminary release of JR-Comm, a telecommunications
  61. tool for the Amiga series of personal computers.  
  62.  
  63. Present features available:
  64.  
  65.  - Full PAL, interlace and overscan support.
  66.  
  67.  - XMODEM, XMODEM-1k, WXMODEM, YMODEM, YMODEM-g, ZMODEM, CIS B+ and
  68.    ASCII file transfer protocols are included.  All file transfers
  69.    adhere strictly to the appropriate specifications and provide
  70.    throughput figures exceeding most other communications programs
  71.    available for the Amiga.
  72.  
  73.  - A phonebook that can store an almost limitless number of directory
  74.    entries(dependant on available memory).  Each entry contains all the
  75.    options available to completely re-configure JR-Comm, not just name,
  76.    number and serial port parameters.
  77.  
  78.  - Optionaly generate a unique password for each directory entry.
  79.  
  80.  - An intelligent dialer that monitors the results of each attempt and
  81.    is capable of multiple entry dialing.
  82.  
  83.  - A very powerful file requester that maintains several lists of files,
  84.    devices and directories.  During a batch protocol selection it enables
  85.    you to select files from any number of directories in a simple manner.
  86.  
  87.  - An almost 100% complete IBM ANSI terminal emulation.
  88.  
  89.  - Chat mode with line editing and history.  Review buffer, function key
  90.    macros.  Session capture with filters.  Session log.  Printer function.
  91.  
  92.  
  93. 1.2  System requirements.
  94.  
  95. Worst case memory requirements would be 512k total free ram for a 16 color
  96. interlace display with 3 open requesters.  292k of this would be for the
  97. display itself which needs to be in chip ram.  At the other end of the
  98. spectrum you can run in as little as 265k total, 65k chip when using a
  99. 2 color non-interlace screen (worst case condition also).
  100.  
  101. Although any Hayes compatible modem will work with JR-Comm, some of the
  102. more advanced features of JR-Comm are available if your modem has a
  103. functional carrier detect signal.  An optional method of hanging up the
  104. modem can be used if your modem will disconnect when the DTR signal is
  105. dropped.
  106.  
  107. JR-Comm also supports high-speed modems via CTS/RTS handshaking so that
  108. the increased throughput they are capable of with MNP and fixed data
  109. link speeds between modem and computer can be obtained.  Tests have been
  110. run with a MultiTech 224 EH and US Robotics HST modem to date.
  111.  
  112.  
  113. 1.3  Default files and paths.
  114.  
  115. When JR-Comm is first started, it will determine the default path for
  116. certain files that JR-Comm uses for initial settings.  It first trys
  117. to locate the logical directory JRCOMM:, if that is not present it will
  118. set the default path to the S: directory.
  119.  
  120. JR-Comm will then try to locate the following files, if they exist in the
  121. current directory they will overide any that are found in the default path.
  122.  
  123.    jrcomm.def    - User defined default parameters file.
  124.    jrcomm.macros - Function key macros file.
  125.    jrcomm.phones - Phonebook file.
  126.    jrcomm.log    - Session logfile.
  127.  
  128. If the jrcomm.def file isn't located JR-Comm will use an internal set of
  129. default settings for initial operation.
  130.  
  131.  
  132. 1.3.1  Filename creation.
  133.  
  134. JR-Comm adds one of six postfixes to a filename after it has been
  135. entered in a string gadget.  These postfixes are:
  136.  
  137.                   .def    - Defaults file.
  138.                   .macros - Macros file.
  139.                   .phones - Phonebook.
  140.                   .log    - Session log.
  141.                   .cap    - Capture file.
  142.                   .font   - User definable fonts.
  143.  
  144. The appropriate string gadget will be immediately updated, except when
  145. using the file reqester which updates filename after it has been closed.
  146. JR-Comm determines if the filename already has the proper extension, if one
  147. is found then no postfix is appended.
  148.  
  149.  
  150. 1.4  The display.
  151.  
  152. The default display used is a borderless Workbench window.  Although not
  153. visible, there is the usual front/back gadget pair in the upper right
  154. corner of the window.
  155.  
  156. Optional displays are borderless windows on a 2, 4, 8 or 16 color custom
  157. screen.  A menu item is available which toggles the display of the screen
  158. title so that you can "drag down" the JR-Comm custom screen.
  159.  
  160. The colors used are set to the normal IBM color palette of BLACK, RED,
  161. GREEN, YELLOW, BLUE, MAGENTA, CYAN and WHITE.  The reason a 16 color
  162. screen is available is because of the high-intensity attribute
  163. available for each of the eight colors.  The colors are arranged in an
  164. order that is different from the IBM version, this was done so that an
  165. acceptable color scheme could be used for all of the screens available.
  166.  
  167. The blinking character attribute of the IBM display is rendered as a
  168. bold character in this emulation.
  169.  
  170. An option is provided for the user to select the text and background
  171. colors of the display from the current palette without changing the
  172. palette itself.
  173.  
  174. Two internal fonts are provided, one for a normal display, the other for
  175. interlace screens.  The proper font is selected automatically depending
  176. on the current screen in use.
  177.  
  178. The blinking underline curor is implemented as a screen sprite.  When
  179. the JR-Comm display is pushed to the back the cursor will still be visible
  180. until another window is activated.  The cursor only is visible while the
  181. JR-Comm window is active and no menus are present on the screen.  It is
  182. also turned off when a requester is displayed.
  183.  
  184.  
  185. 1.4.1  Program limitations.
  186.  
  187. The 8 & 16 color displays require a substantial amount of the total DMA 
  188. available to the Amiga CPU and special purpose chips.  When using a baud
  189. rate higher than 2400 you will almost invariably experience a loss of data
  190. since the display DMA has a higher priority than the CPU and therefor cannot
  191. process the incomming serial data quick enough to prevent data and/or buffer
  192. overruns.
  193.  
  194.  
  195.     
  196.                             GETTING STARTED
  197.  
  198.  
  199.  
  200. 2.1  First time users.
  201.  
  202. If you wish to assign JRCOMM: to a specific directory you should modify
  203. your Startup-sequence file located in the S: directory by adding the
  204. following command.  If you do not wish to re-boot your machine before
  205. running JR-Comm you should also enter this command from the CLI at this
  206. time. 
  207.  
  208.                       assign JRCOMM: "pathname"
  209.  
  210. Replace "pathname" with the directory name you are going to use.  Floppy
  211. disk based users may wish to label a formatted disk with "JRCOMM" to
  212. achieve the same result.  The command to do this would be.
  213.  
  214.                       label drive df0: name "JRCOMM"
  215.  
  216. DF0: was only used as an example, you may want to do this from a
  217. different drive.  Also, notice that the ':' character was not used in
  218. the name "JRCOMM".
  219.  
  220.  
  221. 2.2  Initial startup meassages.
  222.  
  223. After JR-Comm starts up it will display a copyright notice and some
  224. system information about what it is using for parameters.  If no
  225. carrier detect signal was present it will also send a standard Hayes
  226. compatible initialization string to the modem.  A blinking underline
  227. cursor will then indicate that JR-Comm is now ready for operation.
  228.  
  229.  
  230. 2.3  The status line.
  231.  
  232. The 25th line of the display defaults as a status line.  The status tells
  233. the following information:
  234.  
  235.             * X FN 8N1 2400  00:00:00 12:01 am  
  236.             | | || |||  |       |        |
  237.             | | || |||  |       |        +-------  12/24 hour clock
  238.             | | || |||  |       +----------------  Online timer
  239.             | | || |||  +------------------------  Baud rate
  240.             | | || ||+---------------------------  Stop bits
  241.             | | || |+----------------------------  Parity
  242.             | | || +-----------------------------  Data bits
  243.             | | |+-------------------------------  Handshake
  244.             | | +--------------------------------  Duplex
  245.             | +----------------------------------  Protocol
  246.             +------------------------------------  Printer active
  247.  
  248. The left portion of the status line is used to display the filename of
  249. where data is currently being captured to or, which file is being used
  250. for the ASCII send function.  It is also used while the chat mode is
  251. active, please see the chat mode section for more detailed information.
  252.  
  253.  
  254. 2.4  Modem setup.
  255.  
  256. If your modem has the carrier detect signal permanently asserted it
  257. will make the connect timer start counting immediately after JR-Comm is
  258. started.  If it is possible to set your modem to make carrier detect
  259. function normally you should do so now.  Most Hayes compatible 2400 bps
  260. modems can use the following command to set modem so that the carrier
  261. detect signal functions normally, it then writes the modem parameters
  262. to non-volatile ram so that it will remain that way.
  263.  
  264.                            AT&C1&W
  265.  
  266. Please check your user manual for the modem to insure that this command
  267. will work, you may find that a switch may have to be changed instead of,
  268. or in addition to, the above command.
  269.  
  270. If you cannot turn off the carrier detect signal you should deactivate
  271. JR-Comm from sensing it by turning the ignore button on in the modem
  272. requester.
  273.  
  274.  
  275. 2.4.1  MNP modems.
  276.  
  277. In order to use an MNP modem properly for maximizing the throughput they
  278. are capable of delivering, you need to set JR-Comm and the modem to a
  279. fixed baud rate that is usually 2 to 4 times greater than the connection
  280. rate between the two modems.
  281.  
  282. Since the Amiga is sending data at a rate higher than the modem can send
  283. down the phone line some sort of handshaking must be used so that the
  284. internal buffer inside the modem does not overflow.  Most often, the
  285. kind of handshaking used is hardware, or CTS/RTS handshaking.
  286.  
  287. The serial device the Amiga uses has an oddity in that it requires the
  288. DSR signal to be active when it is first opened, or it won't set CTS/RTS
  289. handshaking active.  the trouble is that most MNP modems default to have
  290. the DSR signal follow the carrier detect signal.  Fortunately, they almost
  291. always have a command and/or switch to permanently set DSR active. 
  292. Please set your MNP modem to keep DSR high if you intend to use CTS/RTS
  293. handshaking.
  294.  
  295.  
  296.  
  297.                        THE JR-COMM FILE REQUESTER
  298.  
  299.  
  300.  
  301. 3.1  YAFR...
  302.  
  303. Yes, Another File Requester... Why?
  304.  
  305. Well simply put, it was needed for one reason, selecting multiple
  306. files for batch transfers. But, the big difference here is that this
  307. requester gives you the ability to select files from multiple
  308. directories and/or volumes too!
  309.  
  310.  
  311. 3.2 Functional description.
  312.  
  313. The file requester opens up in one of two modes as indicated in the
  314. title.  One mode is a "SINGLE FILE REQUEST", which will allow you to
  315. select only one file at a time.  The other mode is the "BATCH FILE
  316. REQUEST", which allows you to select any number of files.
  317.  
  318. The requester also creates five seperate lists that you can look at to
  319. select files or change directories with.  The rectangle in the upper
  320. left corner labled as "Display:" shows which one of the five lists is
  321. currently being displayed.  The five lists are:
  322.  
  323.   Files       - The files of the current directory, selected files will
  324.                 be displayed in inverse video.
  325.  
  326.   Devices     - The list of devices available to AmigaDOS.
  327.  
  328.   Directories - Logical, or assigned directories.
  329.  
  330.   Volumes     - Floppy and hard disk volume names.
  331.  
  332.   Selected    - The current list of user selected files.  Files selected
  333.                 by the mouse when this list is displayed will be removed
  334.                 from the selection list.
  335.  
  336. The "PARENT" gadget will change the current directory to the parent
  337. directory.  The current directory is displayed in the string gadget
  338. immediately below, which is labled "Drawer:",  it will also change
  339. the current directory if a pathname is entered in it.
  340.  
  341. The large rectangle is the familiar Amiga-like file selection array, it
  342. can display up to 15 files and/or directories at a time.  Directories
  343. will be prefixed with a "(dir)" string to indicate that it is the name
  344. of a directory not a file.  The righthand side of the rectangle shows
  345. the size in bytes of each file.
  346.  
  347. Below the selection rectangle there are two size indicators.  The one on
  348. the left, labeled as "Free:", shows the amount of free space left on the
  349. current device that the current directory is apart of.  The right side
  350. shows the total number of bytes bytes for all of the files that have
  351. been selected.
  352.  
  353. To the left of the selection rectangle is the proportional scroll gadget
  354. which enables the user to scroll through a list of filenames.  The
  355. "knob", or smaller rectangle inside the scroll gadget is sized to
  356. indicate how much of the list is displayed by the selection rectangle at
  357. any one time.
  358.  
  359. The next gadget down is the string gadget labled "File:", depending on
  360. the function that opened the requester, it can already contain a
  361. filename for possible selection by the user.
  362.  
  363. The last two gadgets are the "OK" and "CANCEL" gadgets.  The "OK" gadget
  364. will return to the calling function with a list of the selected files or
  365. the oen filename is it was opened as a "SINGLE FILE REQUEST".  The
  366. "CANCEL" gadget will return with a null list indicating no file(s) were
  367. selected. 
  368.  
  369.  
  370.  
  371.                             THE PROJECT MENU
  372.  
  373.  
  374.  
  375. 4.1  About JR-Comm.
  376.  
  377. Posts a little blurb about JR-Comm.
  378.  
  379.  
  380. 4.2  Printer.
  381.  
  382. Toggles the printer on or off.  When it is on an asterisk will be displayed
  383. in the status line.
  384.  
  385.  
  386. 4.3  Chat line.
  387.  
  388. Toggles the chat line on or off.
  389.  
  390.  
  391. 4.4  Load defaults.
  392.  
  393. Load a default parameters file.  The file requester will be initialized
  394. to the filename which is in the general parameters requester.
  395.  
  396.  
  397. 4.5  Write defaults.
  398.  
  399. Writes the currently set parameters to a defaults file.
  400.  
  401.  
  402. 4.6  Quit JR-Comm.
  403.  
  404. A query requester is displayed to confirm exit.  Closes any open files
  405. prior to ending.
  406.  
  407.  
  408.  
  409.                             THE PHONEBOOK MENU
  410.  
  411.  
  412.  
  413. 5.1  Phone directory.
  414.  
  415. The phone directory requester is sort of a control panel for adding,
  416. editing and deleting phone directory entries.  It also allows you to
  417. select one or more entries for use by the intelligent dialer.
  418.  
  419. The string gadget labled "Master password:" contains the character
  420. string that is used by JR-Comm to generate passwords for each directory
  421. entry if you want one.
  422.  
  423.  
  424. 5.2  Adding and editing entries
  425.  
  426. The directory entry edit requester is accessed fron the phone directory by
  427. selecting the "ADD" gadget to create a new entry, or by selecting "EDIT"
  428. immediately after selecting an existing entry.
  429.  
  430.  
  431. 5.2.1  Name string.
  432.  
  433. The entry name resides here.  Something must be entered or the entry will
  434. not be added to the phone directory.  Up to 25 characters can be used.
  435.  
  436.  
  437. 5.2.2  Number string.
  438.  
  439. The phone number is entered here.  Up to 36 digits are allowed.
  440.  
  441.  
  442. 5.2.3  Macros filename.
  443.  
  444. The Macros filename is optional, if one is entered it activates the "MACROS"
  445. gadget so that you can enter the desired macros at this or a later time.
  446.  
  447.  
  448. 5.2.4  Capture filename.
  449.  
  450. This entry is also optional.  If defined then a capture file will be 
  451. opened in append mode when the dialer makes a connection.  The review
  452. buffer will also be cleared prior to the capture file being opened.
  453.  
  454.  
  455. 5.2.5  Password string.
  456.  
  457. The password for the current entry can be manually entered, or you can
  458. have JR-Comm create one for you instead, see the section on password types
  459. for more information on this feature.
  460.  
  461.  
  462. 5.2.6  Password length.
  463.  
  464. Used in conjunction with the password type gadgets described below.  Only
  465. a decimal number, less than or equal to 20 will be accepted.
  466.  
  467.  
  468. 5.2.7  Dial prefix.
  469.  
  470. Selects the desired alternate dialing prefix which are used during the
  471. dialing of an entry.  The default is "None" which indicates the default
  472. prefix in the modem requester.
  473.  
  474.  
  475. 5.2.8  Cents/min string.
  476.  
  477. Optional.  Enter the decimal number of cents per minute (100 = a dollar)
  478. which will be displayed in the status line while connected.  The carrier
  479. detect signal must function properly on your modem for this feature to
  480. work right.
  481.  
  482.  
  483. 5.2.9  Password type.
  484.  
  485. Depending on the button selected when you close the edit requester will
  486. determine whether or not JR-Comm creates a password for the current entry.
  487. The "Fixed" button keeps the present password the same.  This button will
  488. be selected after a password is created so that the password stays the same
  489. until a time when you want to have JR-Comm generate a new one.
  490.  
  491. The other three buttons, "Alpha", "Numeric" and "Alphanumeric" define what
  492. type of password will be generated by JR-Comm when the requester is closed.
  493. The generated password will of a length determined by the amount in the 
  494. passowrd length string described above.
  495.  
  496.  
  497. 5.2.10  Other options.
  498.  
  499. The selection gadgets along the bottom of the edit requester will allow you
  500. to change the parameters for the current entry.  See the description for
  501. each option requester for further details.
  502.  
  503.  
  504. 5.3  Dialing directory entries.
  505.  
  506. JR-Comm is capable of multi-dialing any number of directory entries,
  507. just select the ones you want dialed and then select the "DIAL" gadget
  508. in the phone direcotry.  If you wish to dial just one entry double-click
  509. the desired entry.
  510.  
  511. The dialer is controlled by three parameters in the modem requester,
  512. number of retries, dial timeout and redial delay.  The number of
  513. retries defaults to 15 and applies to each entry that is selected when
  514. the dialer is called.  The dial timeout refers to how many seconds the
  515. dialer will wait for a connection after dialing, it defaults to 30
  516. seconds.  The redial delay is also in seconds, defaults to 60 and is
  517. the amount of wait time at the end of the list before restarting again.
  518.  
  519. The dialer has some additional intelligence built-in besides checking
  520. for modem "BUSY" responses.  If three "NO DIALTONE" responses are
  521. received from the modem, the dialer will halt.  It will also remove an
  522. entry from the selected list if a "VOICE" response is received or if
  523. three "NO CARRIER" responses have been received for that entry.
  524.  
  525. An option is provided in the modem requester for modems that don't
  526. reliably detect a busy signal and often return a "NO CARRIER" response
  527. instead.  To prevent JR-Comm from incorrectly removing a selected entry
  528. you should select this option if your modem works like this.
  529.  
  530. When a connection is made the entry is removed from the selected list so
  531. that it will be passed over when the dialer is called again.  If a
  532. macros file was defined for this directory entry it will be loaded.  If
  533. a capture file was defined it will be opened in append mode.  Any other
  534. parameters will be set if required prior to returning to terminal mode.
  535.  
  536. A menu item is also provided to start the dialer again after disconnecting
  537. from another system.
  538.  
  539.  
  540. 5.4  Send password.
  541.  
  542. After the dialer has connected to a system, the password in the
  543. directory entry that was connected to will be sent to the modem when
  544. this item is selected.
  545.  
  546.  
  547. 5.5  Load phones.
  548.  
  549. Load a new phonebook.
  550.  
  551.  
  552. 5.6  Save phones.
  553.  
  554. Save the current phonebook.
  555.  
  556.  
  557.  
  558.                               BUFFER MENU
  559.  
  560.  
  561.  
  562. 6.1  Kill buffer
  563.  
  564. Empties the review buffer, this does not affect the capture of data
  565. which is kept in a seperate internal buffer.
  566.  
  567.  
  568. 6.2  View Buffer
  569.  
  570. Places JR-Comm in review mode.  If the status line is enabled it will
  571. display a message indicating the review mode is active.  When the review
  572. first starts it will fill the screen with the most recent data received.
  573. The review buffer is controlled by the following key sequences.
  574.  
  575.          <ctrl><up> - move to the beginning of the buffer.
  576.         <shift><up> - move up 24 lines.
  577.                <up> - move up one line.
  578.  
  579.        <ctrl><down> - move to the end of the buffer.
  580.       <shift><down> - move down 24 lines.
  581.              <down> - move down one line.
  582.  
  583.               <esc> - end review mode, return to the terminal.
  584.  
  585.  
  586. 6.3  Open capture
  587.  
  588. Opens a file for data capture.  Any data currently in the review buffer
  589. will be immediately transfered to the capture file.  Further data is
  590. seperately buffered in an internal 2k buffer.  See the section on
  591. terminal parameters for the capture filters that are available.
  592.  
  593.  
  594. 6.4  Close capture
  595.  
  596. Closes the capture file after writing any unsaved data.  When a JR-Comm
  597. session is ended the capture file will be closed if currently open.
  598.  
  599.  
  600. 6.5  Append capture
  601.  
  602. Append data to an existing file.  The operation will also save the
  603. current contents of the review buffer to the appended file the same as
  604. an open capture operation mentioned above.  The most recently used
  605. capture filename will be placed in the filename string gadget of the
  606. file requester when it is first opened.
  607.  
  608.  
  609.  
  610.                             TRANSFERS MENU 
  611.  
  612.  
  613.  
  614. 7.1  Parameters requester.
  615.  
  616. This requester contains all the options available for the file transfers
  617. available in JR-Comm.
  618.  
  619.  
  620. 7.1.1  Transfer mode.
  621.  
  622. Binary mode sends the file as a binary image.  Text mode will send a file
  623. and do end-of-line conversion according to the settings in the terminal
  624. requester.
  625.  
  626.  
  627. 7.1.2  Protocol.
  628.  
  629. All the file transfer protocols in use by JR-Comm strictly adhere to the
  630. specifications outlined in the various documents that are available for
  631. each protocol.  The following is a short description of the protocols
  632. available.
  633.  
  634.       CIS B+ - CompuServe's B+ file transfer protocol.
  635.  
  636.      WXMODEM - A variant of the XMODEM protocol which give better
  637.                throughput perfomance over packet switched networks. This
  638.                protocol is quite popular on the PeopleLink information
  639.                service. 
  640.  
  641.       XMODEM - The original XMODEM checksum protocol was created by Ward
  642.                Christensen back in 1977.  Since then it has been modified
  643.                for better error correction by using an optional 16 bit CRC
  644.                polynomial.  JR-Comm will automatically attempt the CRC
  645.                type transfer first and "step down" to the original
  646.                checksum version if it's not recognized.
  647.  
  648.    XMODEM-1k - Another variation of XMODEM, this one uses 1,024 byte
  649.                packets which gives higher throughput than the original
  650.                XMODEM protocol.  Some systems incorrectly call this YMODEM.
  651.  
  652.       YMODEM - This is a varient of TRUE YMODEM which only allows one file
  653.                to be transfered.  This is for the benefit of some BBS's
  654.                that don't properly terminate the protocol by sending a null
  655.                filename block.
  656.  
  657. YMODEM-batch - This is TRUE YMODEM, which is a batch transfer protocol.
  658.                The filename, date and file size are transfered in a
  659.                seperate header block at the beginning of each file
  660.                that is transfered.  This protocol also preserves the
  661.                correct file size, the other XMODEM protocols above pad
  662.                characters at the end of the file.
  663.  
  664.     YMODEM-g - This variation of YMODEM is intended for error correcting
  665.                modems, like those that use MNP error correction. Because
  666.                this protocol does no error checking the file is transfered
  667.                with little delay and can achieve some of the highest
  668.                throughput of any of the protocols listed here.
  669.  
  670.       ZMODEM - This is one of the newest and most powerful protocols
  671.                available.  It is capable of batch transfers, automatically
  672.                initiated downloads, 32 bit CRC error checking, and a
  673.                unique ability to resume a transfer that had been partially
  674.                completed.  JR-Comm supports one of the most complete
  675.                implementations of the ZMODEM protocol as defined by the
  676.                specification document written by ZMODEM's author, Chuck
  677.                Forsberg. 
  678.  
  679.  
  680. 7.1.3  Miscellaneous parameters.
  681.  
  682.    Save aborted - Determines if a file is saved or deleted if the
  683.                   transfer is aborted.
  684.  
  685.  Relaxed timing - Set this gadget if a file transfer fails or gets an
  686.                   excessive number of timeouts.  Useful for packet
  687.                   switched networks.
  688.  
  689.       Auto chop - WXMODEM, XMODEM & XMODEM-k pad data to the last block
  690.                   of a file transfer.  This feature will attempt to
  691.                   remove this data from a binary file only.  
  692.  
  693.      GMT offset - This numeric string gadget contains the positive or
  694.                   negative offset of local time to Greenwich Mean Time.
  695.                   Eastern Standard Time would be expressed with the
  696.                   value -5.  This is used in YMODEM and ZMODEM transfers
  697.                   so that the true file date can be preserved.
  698.  
  699.  
  700. 7.1.4  ASCII send parameters.
  701.  
  702.    Expand blanks - If this gadget is selected then any lines in the
  703.                    ASCII file which are completely blank will have a blank
  704.                    character sent prior to sending the newline character.
  705.                    Some online text editors will stop accepting input if
  706.                    a newline is entered by itself, this option prevents 
  707.                    that from occuring.
  708.  
  709.      Prompt char - Instructs JR-Comm to wait after transmitting a line
  710.                    of text for a specific character before sending the
  711.                    next line.
  712.            
  713.       Char delay - A numeric value describing hundredths of seconds to wait
  714.                    between sending characters.
  715.  
  716.       Line delay - Like char delay above, tenths of seconds to wait
  717.                    between sending lines of text.
  718.  
  719.  
  720. 7.1.5  ZMODEM options.
  721.  
  722.       Resume transfer - If the requested file already exists JR-Comm
  723.                         will attempt to resume the file transfer. A
  724.                         check is made between JR-Comm and the remote
  725.                         system that the file to be resumed is shorter.
  726.                         If the file is not shorter the transfer will be
  727.                         aborted.
  728.  
  729.         Auto download - When this gadget is active it allows JR-Comm to
  730.                         start a ZMODEM download automatically.
  731.  
  732.    Auto d/l challenge - This feature, when selected, instructs JR-Comm
  733.                         to perform a challenge to the remote system so
  734.                         that it can determine if the remote really
  735.                         intended an automatic download to start.  This
  736.                         gadget is activated at the same time the auto
  737.                         download gadget is selected, but may be
  738.                         independantly de-selected in case a certain
  739.                         remote system does not support the challenge
  740.                         option.
  741.  
  742.     Escape ctrl chars - Instructs JR-Comm to do an escape of certain
  743.                         control characters that can interfere with the
  744.                         operation of packet-switched networks.
  745.  
  746.            32 bit CRC - Use the newer 32 bit CRC mode of error detection
  747.                         first, drops down to 16 bit version if the
  748.                         remote does not support it.
  749.  
  750.  
  751. 7.1.6  ZMODEM send modes.
  752.  
  753. The following modes are applicable to a ZMODEM upload from JR-Comm only.
  754. They have no effect on a download, regardless of protocol used.
  755.  
  756.         Newer/longer - Transfer if the file is newer, longer or not
  757.                        present.
  758.  
  759.        CRC different - Transfer if file has a different CRC or is not
  760.                        present.
  761.  
  762.         Append files - Append data only if remote file is shorter than
  763.                        the file locally.  If the file is not present,
  764.                        create it.
  765.  
  766.      Overwrite files - Overwrite any files that are present.  Also
  767.                        called "clobber" mode.
  768.  
  769.    Protect all files - Protect all files unconditionally.
  770.  
  771.        No preference - Use this option for systems that don't transfer a
  772.                        ZMODEM file correctly.
  773.  
  774.  
  775. 7.2  Upload file.
  776.  
  777. Opens the file requester for selection of file(s) to be uploaded.  The
  778. terminal can still be accessed to converse with the remote system while
  779. the requester is open.  Pressing the "CANCEL" gadget will abort the
  780. upload attempt.
  781.  
  782. The status window displays the progress of the transfer and estimated
  783. time to complete the transfer.  The close window gadget will abort the
  784. transfer unconditionally.  There may be a short time lag from when the
  785. gadget is selected to when the window closes and getting returned to
  786. the terminal mode of JR-Comm.  This is due to JR-Comm attempting to
  787. flush the data stream of any left over data that may have been in
  788. transit during the transfer.
  789.  
  790.  
  791. 7.3  Download file.
  792.  
  793. Same operation as with uploads mentioned above.  YMODEM and ZMODEM do
  794. not prompt for filenames since they are sent from the remote system
  795. during the transfer.
  796.  
  797.  
  798. 7.4  ASCII send.
  799.  
  800. Opens the file gadget for selection of a file to do an ASCII send of. 
  801. The status line if present will display the filename while it is opened
  802. for transfer.  This is indicated by the filename prefixed by the '<'
  803. character.
  804.  
  805.  
  806.  
  807.                               OPTIONS MENU
  808.  
  809.  
  810.  
  811. 8.1  Serial parameters.
  812.  
  813. In addition to the standard settings for baud, parity, data and stop
  814. bits, you have gadgets that allow you to set handshake method and duplex
  815. type.  There is also a string gadget that lets you set the amount of
  816. time, in microseconds, a break signal will last.
  817.  
  818.  
  819. 8.1.1  Handshaking.
  820.  
  821. The four types of handshaking, or flow control, are:
  822.  
  823.    XON/XOFF - Uses the XON and XOFF characters for flow control.
  824.  
  825.     CTS/RTS - Also known as hardware flow control, used mostly with high
  826.               speed and/or MNP modems that lock the baud rate between
  827.               computer and modem at a rate higher than the connect speed.
  828.  
  829.        Both - Use both XON/XOFF and CTS/RTS flow control together.
  830.  
  831.        None - Don't use any flow control.
  832.  
  833.  
  834. 8.1.2  Duplex modes.
  835.  
  836. JR-Comm has three type of duplexing available, they are:
  837.  
  838.    Full - Used when the remote system echos a character it receives.
  839.  
  840.    Half - When a key is pressed it is displayed locally as well as sent
  841.           out the serial port.  If the remote system were to echo the
  842.           character you will see two of each character when a key is
  843.           pressed.
  844.  
  845.    Echo - Will echo a character it receives back out to the serial port,
  846.           also displays the character received.  
  847.  
  848.  
  849. 8.2  Modem parameters.
  850.  
  851. This requester contains all the necessary items for setting how
  852. JR-Comm's phone dialer will interact with the modem.  All strings
  853. default to standard Hayes compatible modem commands and responses.  
  854.  
  855.  
  856. 8.2.1  Modem commands:
  857.  
  858.            Init - Sent to the modem when JR-Comm is first started, but
  859.                   only if a carrier signal is not present.
  860.  
  861.          Hangup - Used to hangup the modem if the DTR gadget is not
  862.                   active.  The '~' character represents a one-half
  863.                   second delay.
  864.  
  865.     Dial prefix - The charcter string used to prefix a modem dial
  866.                   command.  This is the default dialing prefix.
  867.  
  868.    Dial postfix - The charcter sequence used to terminate a dial
  869.                   command.
  870.  
  871.  
  872. 8.2.2  Alternate dial prefixes.
  873.  
  874. JR-Comm provides you with three alternate dialing prefixes that will be
  875. used instead of the default dialing prefix described above.
  876.  
  877.  
  878. 8.2.3  Response codes.
  879.  
  880. The eight response codes and their Hayes defaults are:
  881.  
  882.             OK - "OK", The usual modem response to a command.
  883.           Busy - "BUSY", sent when a busy signal is detected.
  884.           Ring - "RING", sent when the modem detects a ring signal.
  885.          Error - "ERROR", sent when the modem detects an error.
  886.          Voice - "VOICE", not all modems are capable of sending this.
  887.        Connect - "CONNECT", the modem has connected to another modem.
  888.     No carrier - "NO CARRIER", the remote system did not respond.
  889.    No dialtone - "NO DIALTONE", sent if no dialtone signal was present.
  890.  
  891.  
  892. 8.2.4  Phone dialer parameters.
  893.  
  894. Three parameters are used to control the phone dialer in JR-Comm, they
  895. are:
  896.  
  897.    Redial delay - Indicates how many seconds JR-Comm will wait before
  898.                   re-starting the list of selected entries.
  899.  
  900.    # of retries - How many times JR-Comm will loop through the list of
  901.                   selected entries before returning to the terminal.
  902.  
  903.    Dial timeout - How many seconds JR-Comm will wait for a connection
  904.                   after sending the dial command to the modem.
  905.  
  906.  
  907. 8.2.5  Ignore No Carrier.
  908.  
  909. Select this if your modem doesn't reliably detect a busy signal and
  910. returns the "NO CARRIER" response instead.  This option tells the dialer
  911. to bypass the no carrier counter.
  912.  
  913.  
  914. 8.2.6  Ignore carrier detect.
  915.  
  916. Select this if your modem doesn't have a properly functioning carrier
  917. detect signal.  This also turns off the connect timer which is useless
  918. without a functioning carrier detect signal.
  919.  
  920.  
  921. 8.2.7  Drop DTR to hangup.
  922.  
  923. Select this option if your modem is capable of disconnecting when the
  924. DTR signal is dropped.
  925.  
  926.  
  927. 8.2.8  Flush with a BREAK.
  928.  
  929. Some MNP modems, the HST is one, are able to clear the internal buffer of
  930. data  when a BREAK signal is sent to the modem.  This shortens the time
  931. needed to recover from an error during a file transfer.
  932.  
  933.  
  934. 8.3  Terminal parameters.
  935.  
  936. This requester deals with how JR-Comm's terminal mode will be operated. 
  937. there are options for capture filters, screen type, end-of-line in and
  938. out conversion types and if chat mode is active.
  939.  
  940.  
  941. 8.3.1  Capture filters.
  942.  
  943. These filters affect the review buffer and capture file, if open.  The
  944. filters currently available are:
  945.  
  946.        ANSI codes - Turn this filter on if you do not want ANSI screen
  947.                     control codes captured.  The codes will still affect
  948.                     the screen though.
  949.  
  950.        CTRL chars - Removes all control characters except for carrige
  951.                     returns, line feeds, form feeds, tabs and
  952.                     backspaces.
  953.  
  954.        Backspaces - If this filter is active then any backspace received
  955.                     will remove the previous character recieved from the
  956.                     capture file too.  This results in the capture function
  957.                     operating in the same manner as the display.
  958.  
  959.  
  960. 8.3.2  Strip high bit.
  961. Use this option if you want the high bit of each character reset that is
  962. received when using 8 data bits, no parity.  (This used to be a capture
  963. filter but has been moved since it now effects both display and captured
  964. text.)
  965.  
  966. 8.3.3  Chat mode.
  967.  
  968. The chat line is a 256 character line displayed along side the connect and
  969. clock in the status line.  The line will automatically scroll left as data
  970. is entered into the line.
  971.  
  972. Line editing is available while in the chat mode.  The left and right
  973. cursor keys move through the current line.  The delete key has two
  974. functions, alone it deletes the character underneath the cursor, when
  975. pressed while the shift key is down it will insert a blank at the
  976. current cursor position.  The backspace key works as expected.  If the
  977. return key is pressed while in the middle of the chat line the complete
  978. line will be transmitted to the modem.
  979.  
  980. Several other editing functions are available with the left and right arrow
  981. keys when used with the <ALT>, <SHIFT> and <CTRL> keys.  They are:
  982.  
  983.      <ALT>   -  Move cursor to left or right of chat line display.
  984.      <CTRL>  -  Move cursor to start or end of the chat line.
  985.      <SHIFT> -  Move cursor left or right one word.
  986.  
  987. The chat mode also has a history buffer which can be accessed via the up
  988. and down cursor keys.  The default size of 50 lines is used unless you
  989. have increased or decreased it.
  990.  
  991. "Natural" control characters are sent to the serial port immediately while
  992. in chat mode.  This is convienent when you need to stop and re-start the
  993. display via the <CTRL>-S and <CTRL>-Q sequences.
  994.  
  995. Finally, the '^' character can be used to send control characters out
  996. via the chat line.  Two '^' characters in a row will send the '^'
  997. character itself.
  998.  
  999.  
  1000. 8.3.4  Convert EOLIN.
  1001.  
  1002. If selected this option tells JR-Comm to add either a C/R or LF character
  1003. to the received end-of-line.  You can tell when you need this option on
  1004. or off by the way the display acts when text is received.  If extra spaces
  1005. occur between lines of text then you need to turn this option off.  If
  1006. everything gets printed on the same line then you need this option on.
  1007.  
  1008.  
  1009. 8.3.5  EOL out.
  1010.  
  1011. Select either a C/R or LF character to be sent to the serial port when a
  1012. newline in a text file or the return key is pressed.
  1013.  
  1014.  
  1015. 8.3.6  Screen type.
  1016.  
  1017. Selects the type of screen JR-Comm will use.  The default makes JR-Comm
  1018. use the Workbench screen.  The other selections are for two, four, eight
  1019. or 16 color screens.  The 16 color screen will give you the full ANSI
  1020. color emulation as defined by the IBM ANSI protocol.  When the Workbench
  1021. screen is selected certain options throughout JR-Comm will be disabled.
  1022. They are the palette menu item, the screen title menu item and the
  1023. interlace gadget described below.
  1024.  
  1025.  
  1026. 8.3.7  Interlace.
  1027.  
  1028. Select this button is you want an interlace display instead.
  1029.  
  1030.  
  1031. 8.3.8  Text and background colors.
  1032.  
  1033. Enter the color number you wish to use for text and background color for
  1034. a multi-color display.  See the palette for the colors and their
  1035. numbers.
  1036.  
  1037.  
  1038. 8.4  Macros requester.
  1039.  
  1040. The macros requester lets you define up to 20 different macro strings
  1041. that will be output to the serial port when the appropriate function key
  1042. is pressed.  The shift key gives you the second set of 10 macros, the
  1043. unshifted function keys access the first 10 macros.
  1044.  
  1045. The display buttons indicate which set of macros is currently being
  1046. displayed as well as an upper or lower case 'f' character for each
  1047. macro.
  1048.  
  1049. The '~' character will make JR-Comm pause for one-half second while
  1050. processing a macro.  The '^' character is used for sending control
  1051. chracters, the sequence "^M" will send a carrige return, the equivalent
  1052. of pressing the return key.
  1053.  
  1054. The "LOAD" and "SAVE" gadgets will take you to the file requester so
  1055. that you can save or load a set of function key macros.
  1056.  
  1057. -Note-  The macros requester will NOT have its "LOAD" and "SAVE" gadgets
  1058. displayed when it is used via the phone directory entry edit requester,
  1059. macros will automatically be loaded and saved now.
  1060.  
  1061.  
  1062. 8.5  Palette requetser.
  1063.  
  1064. Works like most any color palette requester found in other Amiga
  1065. applications.  The "RESET" gadget will reset the colors to the default
  1066. IBM ANSI color set.
  1067.  
  1068. If you are familiar with the IBM color palette you will notice that the
  1069. colors do not follow normal IBM ordering.  This was necessary so that
  1070. the colors JR-Comm uses for string gadgets and requester borders/titles
  1071. would be visible and "clean" in appearence throughout the different
  1072. screen types it uses.
  1073.  
  1074.  
  1075. 8.6  General parameters.
  1076.  
  1077. The parameters in this requester deal with the status line, review buffer
  1078. and chat history sizes, pathnames and filenames.
  1079.  
  1080.  
  1081. 8.6.1  Logfile active.
  1082.  
  1083. This option allows JR-Comm to log transfer and session activity, the
  1084. following actions are presently recorded.
  1085.  
  1086.  -  JR-Comm session start and end.
  1087.  -  Connection to a system via the dialer.
  1088.  -  Modem hangup command.
  1089.  -  Carrier drop if the ignore carrier detect button in the modem requester
  1090.     is not active.
  1091.  -  Successful downloads with file size, total error count and cps rate.
  1092.  
  1093.  
  1094. 8.6.2  The status line.
  1095.  
  1096. Three button gadgets control the status line, they are:
  1097.  
  1098.    Status line displayed - Self explanatory.
  1099.  
  1100.        Time of day clock - Determines if the time-of-day is displayed.
  1101.  
  1102.            On-line timer - Same goes for the connect timer.
  1103.  
  1104.             24 hour mode - Selects either 12 or 24 hour mode.
  1105.  
  1106.  
  1107. 8.8.2  Size settings.
  1108.  
  1109. The review buffer size is indicated in bytes and defaults to 16,000. The
  1110. chat history size indicates lines and defaults to 50.
  1111.  
  1112.  
  1113. 8.8.3  Pathnames.
  1114.  
  1115. Set these string gadgets for JR-Comm to look for or place files for
  1116. uploading and downloading.  The files path is used by JR-Comm to locate
  1117. or put phonebook, macros, definition files and the session log.  
  1118.  
  1119. If during the operation of JR-Comm, you change directories in the file
  1120. requester, that new pathname will be placed in the appropriate pathname
  1121. string discussed here.
  1122.  
  1123.  
  1124. 8.8.4  Serial device and unit number.
  1125.  
  1126. If you are using a serial device different from the default Amiga device
  1127. enter the name and unit number to activate it.
  1128.  
  1129.  
  1130. 8.8.5  Font name and size.
  1131.  
  1132. If you wish to use a font other than the two internal default fonts enter
  1133. the name and font height in these string gadgets.
  1134.  
  1135.  
  1136.  
  1137.                                MISC MENU
  1138.  
  1139.  
  1140.  
  1141. 9.1  Timer reset.
  1142.  
  1143. Resets the connect timer located in the status line.
  1144.  
  1145.  
  1146. 9.2  Send break.
  1147.  
  1148. Sends a break signal out the serial port for a length specified by the
  1149. gadget in the serial requester.  Default is 250,000 microseconds.
  1150.  
  1151.  
  1152. 9.3  Hangup modem.
  1153.  
  1154. Will hangup the modem either by sending the hangup command string as
  1155. defined in the modem requester or, by dropping the DTR signal to the
  1156. modem if the DTR gadget is active in the modem requester.  The default
  1157. is to send the hangup command, which is initially set to the Hayes
  1158. compatible "~~~+++~~~ATH1^M" string.  See the section on special
  1159. character definitions for modem and other commands that are sent out of
  1160. the serial port.
  1161.  
  1162.  
  1163. 9.4  Clear screen.
  1164.  
  1165. Clears the screen.  The same effect as a <CTRL>-L character or ANSI
  1166. sequence of <ESC>[2J.
  1167.  
  1168.  
  1169. 9.5  Screen title.
  1170.  
  1171. When using a custom screen a full size borderless window prevents you
  1172. from switching to another screen.  By selecting this item you can 
  1173. display the screen title bar which allows you to "drag" the screen down.
  1174. The screen title is also displayed during file transfers automatically.
  1175.  
  1176.  
  1177.  
  1178.                             JR-COMM SUPPORT
  1179.  
  1180.  
  1181. 10.1
  1182.  
  1183. Support for JR-Comm will be available by contacting the Atlantic County
  1184. Amiga BBS, (609)625-2453.  It is an open system available to anyone 24
  1185. hours per day, seven days per week.  Access of 3/12/24 & 9600 HST is
  1186. supported.
  1187.  
  1188. If you are calling with a problem about JR-Comm please be specific and
  1189. post your request in a public message.  This will help future callers
  1190. who may find the information they're searching for by reading previously
  1191. posted messages.
  1192.  
  1193. The most current release of JR-Comm will always be available on the BBS.
  1194. Likewise, there will be new versions simultaneously posted on CompuServe,
  1195. People Link and GEnie.
  1196.